package Demo2;

// https://www.nowcoder.com/questionTerminal/2d3f6ddd82da445d804c95db22dcc471

import java.util.Scanner;

public class TestDemo1 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        //将循环输入的数据存放到数组中
        while(scanner.hasNext()){
            int[] arr = new int[n];
            for (int i = 0; i < n; i++) {
                arr[i] = scanner.nextInt();
            }
            //flag的意思没有弄懂
            int count=1;
            int flag=0;   //表示位：0表示相等，1表示递增，-1表示递减；
            for(int j=1;j<arr.length;j++){
                if(arr[j]>arr[j-1]){
                    if(flag==0){
                        flag=1;
                    }else if(flag==-1){
                        flag=0;    //表示不符合条件,count++，回复初始值，进行下次循环判断;
                        count++;
                    }
                }
                if(arr[j]<arr[j-1]){
                    if(flag==0){
                        flag=-1;
                    }else if(flag==1){
                        flag=0;   //表示不符合条件,count++，回复初始值，进行下次循环判断;
                        count++;
                    }
                }
            }
            System.out.println(count);
        }
    }
}
